package com.hoshiicloud.rbac.vo;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 权限
 * </p>
 *
 * @author Mr.Wu
 * @since 2019-04-27
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "SysPermissionesVO对象", description = "权限")
public class SysPermissionesVO implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "id")
	@TableId("id")
	private Long id;

	@ApiModelProperty(value = "所属系统")
	@TableField("system_id")
	private Long systemId;

	@ApiModelProperty(value = "所属上级")
	@TableField("pid")
	private Long pid;

	@ApiModelProperty(value = "名称")
	@TableField("name")
	private String name;

	@ApiModelProperty(value = "类型(1:目录,2:菜单,3:按钮)")
	@TableField("type")
	private Integer type;

	@ApiModelProperty(value = "权限值")
	@TableField("permission_value")
	private String permissionValue;

	@ApiModelProperty(value = "路径")
	@TableField("uri")
	private String uri;

	@ApiModelProperty(value = "图标")
	@TableField("icon")
	private String icon;

	@ApiModelProperty(value = "状态(0:禁止,1:正常)")
	@TableField("status")
	private Integer status;

	@ApiModelProperty(value = "排序")
	@TableField("orders")
	private Long orders;

	@ApiModelProperty(value = "创建时间")
	@TableField("add_time")
	private LocalDateTime addTime;

	@ApiModelProperty(value = "更新时间")
	@TableField("update_time")
	private LocalDateTime updateTime;

	@ApiModelProperty(value = "版本号")
	@TableField("version")
	private Integer version;

	@ApiModelProperty(value = "建立人")
	@TableField("createdby")
	private String createdby;

	@ApiModelProperty(value = "修改人")
	@TableField("modifiedby")
	private String modifiedby;

	@ApiModelProperty(value = "关联系统id")
	@TableField("refid")
	private Long refId;

	@ApiModelProperty(value = "关联系统类型")
	@TableField("reftype")
	private String refType;
}
